home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / esc.jar / com / extensibility / validation / DoubleLeafValidator.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-06-30  |  1.4 KB  |  37 lines

  1. package com.extensibility.validation;
  2.  
  3. import com.extensibility.xml.SchemaIntf;
  4. import com.extensibility.xml.dt.DataType;
  5. import com.extensibility.xml.dt.DataTypeIntf;
  6.  
  7. class DoubleLeafValidator extends DataValidator {
  8.    String validate(SchemaIntf var1, DataType var2, String var3) {
  9.       double var4;
  10.       if (var3.equals("INF")) {
  11.          var4 = Double.POSITIVE_INFINITY;
  12.       } else if (var3.equals("-INF")) {
  13.          var4 = Double.NEGATIVE_INFINITY;
  14.       } else if (var3.equals("NaN")) {
  15.          var4 = Double.NaN;
  16.       } else {
  17.          try {
  18.             var4 = Double.valueOf(var3);
  19.          } catch (Exception var8) {
  20.             String var7 = "invalid number";
  21.             return var7;
  22.          }
  23.  
  24.          if (var2.getTypeName() == DataTypeIntf.R4 && (var4 < (double)Float.MIN_VALUE || var4 > (double)Float.MAX_VALUE)) {
  25.             return String.valueOf(String.valueOf(String.valueOf("value ").concat(String.valueOf(var4))).concat(String.valueOf(" is out of range for type "))).concat(String.valueOf(var2.getTypeName()));
  26.          }
  27.       }
  28.  
  29.       String var6 = ((DataValidator)this).applyDoubleFacets(var1, var2, var4);
  30.       if (var6 == null) {
  31.          var6 = ((DataValidator)this).applyLexicalFacets(var1, var2, var3);
  32.       }
  33.  
  34.       return var6;
  35.    }
  36. }
  37.